package com.run2code.design.behavioral.intermediary;

import java.util.ArrayList;
import java.util.List;

/**
 * 中介者类 -> 聊天室管理员
 * 关注公众号【奔跑的码畜】，一起进步不迷路
 *
 * @author 第七人格
 * @date 2024/05/24
 */
public class ChatRoomAdmin implements Mediator {
    /**
     * 中介者类 -> 聊天室管理员
     */
    private final List<User> users;

    public ChatRoomAdmin() {
        users = new ArrayList<>();
    }

    @Override
    public void sendMessage(String message, User user) {
        for (User u : users) {
            if (u != user) {
                u.receiveMessage(message);
            }
        }
    }

    @Override
    public void addUser(User user) {
        users.add(user);
    }

    @Override
    public void removeUser(User user) {
        users.remove(user);
    }
}
